草庐IT

c++ - CRT 和 WIN32 API

全部标签

r - win-builder 找不到 gcc

我构建了一个包含C/C++代码的R包。我现在正在尝试在win-builder上测试这个包.不幸的是,在00install.out中返回了以下错误:*installing*source*package'mypackage'...**libsrunning'src/Makefile.win'.../usr/bin/make--directory=lib/mylib/gcc-g-Wall-fPIC-cmycode.cmake[1]:gcc:Commandnotfoundmake[1]:***[mycode.o]Error127make:***[mylib]Error2Warning:runn

c - 从 C 打开/运行另一个程序,然后关闭该程序

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion如何从C执行/打开/运行另一个程序,而不是阻止它,但让它同时运行。然后我想做一些像服务器/客户端这样的测试,然后如果已经完成我只想杀死/关闭这个程序。我读过system()orexecv()但第一个似乎在等待结果,第二个似乎只能在Linux上工作?在最好的情况下,我希望有跨平台或最小的MacOS/Windows/Linux(Ubuntu)工作解决方案。当我不再需要它时,我还需要关闭这个以前打开的程序。

c++ - 从 Matlab 运行 exe 代码。在 cmd (dos) 中工作的完全相同的指令在 Matlab 中失败

这让我发疯,我必须承认。在终于能够成功编译我需要处理语音文件的两个函数之后,从我从一个值得信赖的在线存储库下载的C/C++代码(代码已经在Linux中经过彻底测试),我现在正在努力从Matlab启动这些文件...当我在cmd(dos)中键入以下命令时分析b2.wavconfig_default它有效,没问题(参见此处Works)。然后,我将完全相同的命令构建到一个字符串中,并将其提供给“系统”Matlab函数。然后代码崩溃了...(请参阅此处Fails)我已经尝试使用完整路径(c:\b2.wav等)但仍然无法正常工作...关于为什么会发生这种情况有什么想法吗?

c - 如何使这个 1996 年的 makefile 起作用?

这是1996年旧GSM标准的make文件。我需要让它在运行OSX10.11.6的MacBook或Windows7的大学计算机上运行。Windows没有安装nmake在谷歌搜索之后,这个问题似乎是一个解决方案。有没有办法绕过makefile的使用?此外,将CDIR和UTILSDIR更改为完整路径在我的Mac上还不够。make-fmakefile.mak仍然返回TCC-A-I/Users/Henrik/Desktop/GSMHR2/DISK/c-Fc-ml-c/Users/Henrik/Desktop/GSMHR2/DISK/c/gsm_hr.cmake:TCC:Nosuchfileord

c - 为什么使用 fscanf 会导致应用程序崩溃?

C编程新手。以下代码部分试图从文本文件(utf-8)中读取制表符分隔的MD5列表(32个字符)和相应的描述(最多128个字符),但导致应用程序崩溃:HANDLEhFile=CreateFileW(good_path,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED,NULL);if(hFile==INVALID_HANDLE_VALUE){returnFALSE;}LPWSTRmd5=malloc(sizeof(wchar_t)*32);LPWSTRdes

windows - 处理软件正在使用的文件时如何避免 I/O 错误 32

我有一个带有一些软件的科学仪器,还有一些不足之处……但它是专有的,我无法改变软件的工作方式。所以我试着玩得开心。这是我的设置:该软件创建一个文本文件来存储数据。对于每一个新的观察(每10秒),它将最新的观察附加到文本文件中。我想将该文件保存到共享网络驱动器,这样我就可以在我的另一台计算机上即时访问该文件的最新版本。但是,如果在软件尝试写入文件时笔记本电脑失去与网络驱动器的连接,即使是一小段时间,软件也会崩溃,之后的所有观察结果都会丢失到网络空间中。我收到I/O错误103。所以这是我编写的一个小批处理文件,首先将数据保存在本地硬盘上,然后定期进行复制:set/pname=Filename

c++ - 如何判断 stderr 是否已在 Windows 中重定向?

我希望我的程序在stderr连接到控制台时和重定向到文件/管道时具有不同的行为。在Unix系统中,我可以只测试isatty(STDERR_FILENO),但我如何在Windows中执行此操作?MSVCRT也有一个名为_isatty的函数,它不能正常运行(例如DetectNULfiledescriptor(isattyisbogus))。我可以调用任何Windows或NTAPI来测试它吗? 最佳答案 调用GetStdHandle获取标准错误句柄。将该句柄传递给GetFileType以找出它是什么类型的文件。如果返回FILE_TYPE_

c# - 使用 C# 和 Win API 移动屏幕键盘 (osk.exe)

我制作了这个小的.ps1脚本,因为它允许我在不使用编译器(至少直接使用)的情况下运行C#。我想移动使用cmd/cosk.exe打开的“辅助功能屏幕键盘”,因为我不能真正使用TabTip-平移触摸屏键盘在Win8+上。由于屏幕键盘不像平移键盘那么漂亮,我想移动键盘到所需位置并调整它的大小。我注意到OSK有一个子窗口(OSKMainClass→DirectUIHWND),所以我为此努力了,但没有运气。另一方面,用于单个窗口的相同代码适用于记事本并正确放置它并调整它的大小。我将Process.Start()放入if中,以便它返回一些反馈,因此我看到它找到了子窗口-这很好。但是,它没有移动它。

c - Malloc 是否分配了比需要的更多的内存?

这是学校的C作业,但我遇到了一些奇怪的事情,我不知道它是否正常。我必须接受命令行参数,一个例子是-ia.b所以在我的程序中,我使用malloc动态分配内存char*fileName=NULL;fileName=malloc(strlen(argv[i])*sizeof(char));//errortestingetcstrcpy(fileName,argv[i]);工作正常,但我通过visualstudio调试器查看内存,这是在内存位置分配的内存位置,对我来说,它需要的空间更大:0x01608b98"ÍÍÍÍÍýýýýB`\x1˜?`\x1\xf1¼O{º"如果我像这样转换malloc

c++ - 如何确定计算机上安装的物理 RAM? ( Windows )

如何在Windows中使用C++将物理内存安装到我的计算机上?我的意思不仅是可以GlobalMemoryStatusEx()的容量参数,还有已用内存插槽的数量、内存类型(如DDR1/DDR2/DDR3)、插槽类型(DIMM/SO-DIMM)和内存总线的时钟速率。我需要使用SMBIOS吗?或者是否有其他方式获取此信息? 最佳答案 在我的机器上,您请求的大部分信息都可以通过WMI获得。看看Win32_PhysicalMemory和相关类(class)。比如wmicmemorychip在我的机器上的输出是:C:\>wmicmemorych